// 为什么JavaScript代码会存在栈溢出？

// var a = 2;
// function add(b, c) {
//     return b + c;
// }
// function addAll(b, c) {
//     var d = 10;
//     var result = add(b, c);
//     return a + result + d;
// }
// addAll(3, 6);

// function add() {
//     const a = 10;
// }
// console.log(a);

// function foo() {
//     for(var i = 0; i < 7; i++){

//     }
//     console.log(i);
// }
// foo()


// let x = 5
// const y = 6

// x = 7
// y = 9
// console.log(x, y);


// function varTest() {
//     var x = 1
//     if(true){
//         let x = 2
//         console.log(x);
//     }
//     console.log(x);
// }
// varTest()


// function foo() {
//     var a = 1
//     let b = 2
//     {
//         let b = 3
//         var c = 4
//         let d = 5
//         console.log(a);
//         console.log(b);
//     }
//     console.log(b);
//     console.log(c);
//     console.log(d);
// }
// foo()


let name = '张三'
{
    console.log(name);
    let name = '李四'
}